<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
body,td,th {
	font-family: Verdana, Geneva, sans-serif;
}

.codigo {
	font-family:"Courier New", Courier, monospace
}

</style>
</head>

<body>
<h2>easync PHP - <em>easy synchonize MySQL and PHP</em></h2>
<h3>Framework de mapeamento Objeto-Relacional para MySQL e PHP</h3>
<p>v1.0 </p>
<p><strong>Download</strong></p>
<blockquote>
  <p><strong>	Faça o chechout (svn) no Google Code:</strong> https://easync-php.googlecode.com/svn/</p>
</blockquote>
<p><strong>Funcionamento</strong></p>
<p>O easync PHP gera classes na linguagem PHP para manipulação de registros de tabelas  MySQL, de forma a facilitar consultas CRUD (CREATE, UPDATE, RETRIEVE e DELETE).</p>
<p>Exemplo:</p>
<table border="1" cellspacing="0" cellpadding="4">
  <tr>
    <td colspan="2">Tabela <strong>usuario</strong></td>
  </tr>
  <tr>
    <td>id</td>
    <td>AUTO_INCREMENT Primary Key</td>
  </tr>
  <tr>
    <td>nome</td>
    <td>VARCHAR(200)</td>
  </tr>
  <tr>
    <td>cpf</td>
    <td>CHAR(11)</td>
  </tr>
</table>
<p>A tabela usuario é transformada para uma classe <strong><span class="codigo">ENTITY_usuario</span></strong>.</p>
<p>O easync PHP também gera as classes de coleção e busca para esta tabela:</p>
<p class="codigo">Classe de busca: ENTITY__FIND__usuario<br />
Classe de coleção de objetos: ENTITY__COLLECTION__usuario</p>
<p class="codigo">&nbsp;</p>
<p><strong>Buscar usuário:</strong></p>
<table border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td width="614" valign="top" class="codigo"><p>$find_usuario = new ENTITY__FIND__usuario();<br />
      $find_usuario-&gt;filterBy_LIKE_Nome('%user%');<br />
      $find_usuario-&gt;orderBy(ENTITY_usuario::$COLUMN_nome);
      <br />
      $colecao = $find_usuario-&gt;get();</p>
      <p>// percorrendo os resultados:<br />
      for($i=0; $i&lt;$colecao-&gt;getAmount(); $i++) {</p>
      <p>$nome = $colecao-&gt;getByIndex($i)-&gt;getNome();<br />
        echo &quot;Usuario $i: $nome&quot;;<br />
        }</p>
<p>&nbsp;</p></td>
    <td width="366" valign="top"><p>Consultas SQL realizada pela classe:</p>
      <p class="codigo">SELECT * FROM usuario WHERE nome LIKE '%user%' ORDER BY nome;</p></td>
  </tr>
</table>
<p>&nbsp;</p>
<p><strong>Criar novo usuário:</strong></p>
<table border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td valign="top" class="codigo">$usuario = new ENTITY_usuario();<br />
$usuario-&gt;setNome('usr');<br />
$usuario-&gt;setCPF('01234567890');<br />
$usuario-&gt;save();</td>
    <td valign="top">Consulta SQL realizada pela classe:
    <p class="codigo">INSERT INTO usuario (id, nome, cpf) VALUES (NULL, 'usr', '01234567890');</p></td>
  </tr>
</table>
<p>&nbsp;</p>
<p><strong>Atualizar CPF de usuário:</strong></p>
<table border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td valign="top" class="codigo">$usuario = ENTITY_usuario::getByPk(2);<br />
      $usuario-&gt;setCPF('03333333330');<br />
    $usuario-&gt;save();</td>
    <td valign="top"><p>Consulta SQL realizada pela classe:</p>
    <span class="codigo">UPDATE usuario SET cpf = '033333333330' WHERE id = 2;</span></td>
  </tr>
</table>
<p>&nbsp;</p>
<p><strong>Remover usuário:</strong></p>
<table border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td valign="top" class="codigo">$usuario = ENTITY_usuario::getByPk(2);<br />
      $usuario-&gt;remove();</td>
    <td valign="top">Consulta SQL realizada pela classe:    <span class="codigo">DELETE FROM usuario WHERE id = 2;</span></td>
  </tr>
</table>
<p></p>
<p>&nbsp;</p>
<p><strong>Porque usar easync PHP?</strong></p>
<ol>
  <li>Este framework transforma consultas básicas do CRUD em classes e funções em PHP, de forma a substituir a escrita de scripts SQL de consulta.</li>
  <li>Isto diminui a possibilidade de erros de consulta ao banco de dados.</li>
  <li>O script segue o padrão PHPDoc, para permitir o recurso auto-completar dos ambientes NetBeans e Eclipse, de forma a selecionar as funções das classes de forma mais fácil.</li>
  <li>Também gera classes de busca, retornando objetos armazenados em classes do tipo collection, para facilitar a busca em loops do código PHP.</li>
  <li>Verificação de campos NULL com a propriedade <strong>hasValue</strong>, semelhante ao Hibernate.</li></ol>
</body>
</html>

<?php



/*

Este script transforma consultas básicas do CRUD em classes e funções em PHP, de forma a substituir a escrita de scripts SQL.

Isto diminui a possibilidade de erros de consulta ao banco de dados.

O script segue o padrão PHPDoc, para permitir o recurso auto-completar dos ambientes NetBeans e Eclipse, de forma a selecionar as funções das classes de forma mais fácil.


Também possui classes de busca simples para uma tabela (ainda não suporta consulta a mútiplas tabelas).

 */










?>
